package com.bfs.anasit.service;

import com.bfs.anasit.model.AnasitUser;
import org.springframework.data.domain.Sort;

import java.util.List;

/**
 * Created by IntelliJ IDEA.
 * User: lukman
 * Date: 6/12/11
 * Time: 10:02 PM
 * To change this template use File | Settings | File Templates.
 */
public interface AnasitUserService {
    /**
     * Get Patient with the associated patientId.
     *
     * @param Id- Anasit User ID
     * @return Patient object if provided patientId is
     *         found in the data repository, otherwise return null
     */
    public AnasitUser findById(Long Id);


    /**
     * Get all Anasit User objects.
     *
     * @return collection of Patient objects
     */
    public List<AnasitUser> findAllAnasitUsers();


    /**
     * Update the data repository with the
     * state of the provided anasitUser object.
     *
     * @param anasitUser Person object
     */
    public AnasitUser update(AnasitUser anasitUser);


    /**
     * Remove the associated anasitUser
     * record from the data repository.
     *
     * @param anasitUser
     */
    public void delete(AnasitUser anasitUser);


    /**
     * Save the state of the provided
     * anasitUser object into the data
     * repository.
     *
     * @param anasitUser
     */
    public AnasitUser save(AnasitUser anasitUser);

    /**
     * Retrieves all AnasitUsers that
     * are sorted by the sort parameter
     *
     * @param sort parameters to sort by.
     */
    public List<AnasitUser> findAllAnasitUsers(Sort sort);
}
